//
//  YouMiViewController.m
//  YouMiSDK_iPhone_Sample
//
//  Created by Layne on 10-11-29.
//  Copyright 2010 www.youmi.net. All rights reserved.
//

#import "YouMiViewController.h"

@implementation YouMiViewController
@synthesize adView;

- (void)awakeFromNib {
	self.adView = [YouMiView createAdViewWithRevealModal:0 delegate:self];
	[self.adView startAdRequest];
	[self.view addSubview:self.adView];
}



- (void)dealloc {
	[adView release];
    [super dealloc];
}


#pragma mark -
#pragma mark YouMiView Delegate Methods

/*
 *开发者应用ID
 *
 *详解:前往有米主页:http://www.youmi.net/ 注册一个开发者帐户，同时注册一个应用，获取对应应用的ID
 */
- (NSString *)appIdForAd:(YouMiView *)adView{
	return @"6e9e6d15741495b6";
}


/*
 *开发者的安全密钥
 *
 *详解:前往有米主页:http://www.youmi.net/ 注册一个开发者帐户，同时注册一个应用，获取对应应用的安全密钥
 */
- (NSString *)appSecretForAD:(YouMiView *)adView{
	return @"90d29d1be5d71a7c";
}


/*
 *广告请求模式
 *
 *详解:广告请求的模式 [0：正常模式 1：测试模式 非法：测试模式] 
 *正常模式:按正常广告请求，记录展示和点击结果
 *测试模式:开始测试情况下请求，不记录展示和点击结果
 *备注:默认是测试模式，若开发者在模拟器上面使用的时候，无论返回的是0，还是1都被默认为测试模式
 *	  开发者只有在真机器模式下面才返回0，正常模式才有效
 *警告:若设置了正常模式，则若请求过快，或者点击过快过多则都有可能被服务器判为作弊行为，停止广告的请求。测试模式下没有这种限制。
 */
- (NSUInteger)requestModalForAD:(YouMiView *)adView{
	return 1;
}


#pragma mark -
#pragma mark optional notification methods
/*
 *第一次请求广告成功后调用
 *
 *详解:当你成功调用YouMiView的方法startAdRequest后，后台程序开始先有米服务器请求广告，当第一次请求广告成功的时候将会调用该委托函数
 */
- (void)didReceiveAd:(YouMiView *)adView{
	NSLog(@"--IB---***-第一次接收到广告成功-***--------");
}


/*
 *第一次请求广告失败后调用
 *
 *详解:当你成功调用YouMiView的方法startAdRequest后，后台程序开始先有米服务器请求广告，当第一次请求广告失败的时候将会调用该委托函数
 */
- (void)didFailToReceiveAd:(YouMiView *)adView{
	NSLog(@"--IB---***-第一次接收到广告失败-***--------");
}


/*
 *请求刷新广告成功后调用
 *
 *详解:当后台程序开始请求广告后，会再默认间隔之后发送请求刷新广告，当请求成功后将会调用该委托函数
 */
- (void)didReceiveRefreshedAd:(YouMiView *)adView{
	NSLog(@"--IB---***-更新广告成功-***--------");
}


/*
 *请求刷新广告失败后调用
 *
 *详解:当后台程序开始请求广告后，会再默认间隔之后发送请求刷新广告，当请求失败后将会调用该委托函数
 */
- (void)didFailToReceiveRefreshedAd:(YouMiView *)adView{
	NSLog(@"--IB---***-更新广告失败-***--------");
}


/*
 *第一次将要显示广告前调用
 *
 *详解:当第一次请求广告成功后，将要显示广告，显示广告前调用该委托函数
 */
- (void)willShowAd:(YouMiView *)adView{
	NSLog(@"--IB---***-将要显示第一次广告条-***--------");
}


/*
 *第一次显示广告成功后调用
 *
 *详解:当第一次请求广告成功后，显示获得的广告，显示广告成功后调用该委托函数
 */
- (void)didShowAd:(YouMiView *)adView{
	NSLog(@"--IB---***-显示第一次广告条完成-***--------");
}


/*
 *将要刷新广告前调用
 *
 *详解:当请求刷新广告成功后，将要刷新广告，在刷新广告前将调用该委托函数
 */
- (void)willShowRefreshedAd:(YouMiView *)adView{
	NSLog(@"--IB---***-将要显示更新广告-***--------");
}


/*
 *刷新广告成功后调用
 *
 *详解:当请求刷新广告成功后，刷新广告，在刷新广告成功后将调用该委托函数
 */
- (void)didShowRefreshedAd:(YouMiView *)adView{
	NSLog(@"--IB---***-显示更新广告完成-***--------");
}


/*
 *用户点击广告后，将要触发全屏显示广告时候调用
 *
 *详解:当用户点击广告条后，将会触发显示全屏广告，在显示全屏广告前调用该委托函数
 */
- (void)willPresentFullScreenModal:(YouMiView *)adView{
	NSLog(@"--IB---***-将要触发全屏广告-***--------");
}


/*
 *用户点击广告后，全屏显示广告后调用
 *
 *详解:当用户点击广告条后，将会触发显示全屏广告，在显示全屏广告成功后调用该委托函数
 */
- (void)didPresentFullScreenModal:(YouMiView *)adView{
	NSLog(@"--IB---***-全屏广告显示完成-***--------");
}


/*
 *用户取消全屏显示的广告后调用
 *
 *详解:当显示全屏广告后，如果用户退出全屏广告成功，则调用该委托函数
 */
- (void)didDismissFullScreenModal:(YouMiView *)adView{
	NSLog(@"--IB---***-全屏广告消失-***--------");
}


/*
 *用户点击广告后，可能引发退出程序时候调用
 *
 *详解:若用户点击广告条，后将会触发浏览器获取App Store的时候，此刻将会退出程序，此时调用委托函数
 */
- (void)applicationWillTerminate:(YouMiView *)adView{
	NSLog(@"--IB---***-程序将要退出-***--------");
}


#pragma mark optional appearance control methods

/*
 *应用的版本信息
 *
 *详解:返回开发者自己应用的版本信息
 */
- (NSString *)appVersionForAd:(YouMiView *)adView{
	return @"1.0";
}


/*
 *设置广告请求间隔时间
 *
 *详解:默认是30秒，最低也是30秒，若返回值低于30秒，则采用默认广告请求间隔时间
 */
- (CGFloat)requestAdIntervalForAd:(YouMiView *)adView{
	return 30.0;
}



/*
 *广告背景显示颜色
 *
 *详解:广告条的属性值
 */
- (UIColor *)backgroundColorForAd:(YouMiView *)adView{
	return [UIColor blackColor];
}


/*
 *广告点击后高亮的颜色
 *
 *详解:广告条的属性值
 */
- (UIColor *)highlightColorForAd:(YouMiView *)adView{
	return [UIColor blueColor];
}


/*
 *广告显示的字体颜色
 *
 *详解:广告条的属性值
 */
- (UIColor *)primaryTextColorForAd:(YouMiView *)adView{
	return [UIColor whiteColor];
}




@end
